function gmm = gmm_fitml(X)
    mu = mean(X);
    mu = mu';
    
    N = size(X, 1);
    dim = size(X, 2);
    sigma = 1e-5 * eye(dim);
    
    for i = 1 : N
        sigma = sigma + (X(i,:)' - mu) * (X(i,:)' - mu)';
    end
    sigma = 1 / N * sigma;
    
    gmm.mu = cell(1, 1);
    gmm.mu{1} = mu;
    gmm.sigma = cell(1, 1);
    gmm.sigma{1} = sigma;
    gmm.mixing_pi = ones(1,1);
end

